1. Field of the invention
The present invention relates to a master/slave flipflop, and more specifically to a testable master/slave flipflop which can be used in a large scaled integrated circuit.
2. Description of related art
Conventionally, master/slave flipflops have been frequently used in logic networks. A typical one of the master/slave flipflops includes a master flipflop and a slave flipflop. The master flipflop is composed of a first inverter having an input connected to receive an input signal through a first transfer gate, a second inverter having an input connected to an output of the first inverter, and a second transfer gate connected between an output of the second inverter and the input of the first inverter. The slave flipflop is composed of a third inverter having an input connected through a third transfer gate to the output of the master flipflop, a fourth inverter having an input connected to an output of the third inverter, and a fourth transfer gate connected between an output of the fourth inverter and the input of the third inverter. The first to fourth transfer gates are controlled to be opened or closed by a clock signal and an inverted signal of the clock signal as follows:
When the clock signal is at a high level "H", the first and fourth transfer gates are opened or turned on, and the second and third transfer gates are closed or turned off, so that the master flipflop is brought into a data read condition and the slave flipflop is brought into a hold condition. Thereafter, if the clock is brought to a low level "L", the first and fourth transfer gates are closed or turned off, and the second and third transfer gates are opened or turned on, so that the master flipflop is brought into the hold condition and the slave flipflop is brought into the data read condition. Thus, at least two state transitions of the clocks ("H".fwdarw."L" and "L".fwdarw."H") are required to determine internal conditions of the master/slave flipflop. In other words, the master/slave circuit is a sequential circuit.
If a logic network having a plurality of input terminals I.sub.1 to I.sub.n and a plurality of output terminals O.sub.1 to O.sub.n is formed by using a number of master/slave flipflops which are the same as the above mentioned master/slave flipflops, the formed logic network can be divided into a plurality of combinational circuits and a plurality of sequential circuits, each one of the sequential circuits including a group of master/slave flipflops and being connected between each pair of combinational circuits
When the above mentioned logic network is assembled in a large scaled integrated circuit, it is impossible to externally directly detect or modify a logic condition of a line or a switch in the inside of the logic network after manufactured. Under this condition, for this test, it has been conventionally performed to apply appropriate input signals to all the input terminals I.sub.1 to I.sub.n and to investigate output conditions appearing on all the output terminals O.sub.1 to O.sub.n, so as to discriminate an acceptable/faulty product on the basis of whether or not the output conditions of all the output terminals O.sub.1 to O.sub.n coincide with desired values, respectively.
However, this test method generally requires a long test time, and is difficult to discriminate an acceptable/faulty product concerning the master/slave flipflops. Therefore, in order to test all the groups of master/slave flipflops, it has been widely used to connect all the master/slave flipflops in series at the time of testing, and to supply an input signal to a first stage flipflop of the series-connected flipflops and at the same time to supply test-only clock signals to all the series-connected flipflops, so that the input signal is transferred through the series-connected flipflops, one stage by one stage, in response to a train of clock signals, and an output signal is obtained from a final stage flipflop of the series-connected flipflops. This method is called a "scan path" method, and is known as a test method suitable to a large scaled integrated circuit.
However, as mentioned hereinbefore, since the master/slave circuit is a sequential circuit, even if the scan path method is used for test of the logic network incorporating therein a number of master/slave flipflops, it is necessary to supply the testing clocks of the number which is a double of the number of all the master/slave flipflops included in the logic network. Therefore, a long test time has still been required.
In addition, in the case that the scan path method is applied in the network having the conventional master/slave flipflops, a large group of switches and a large group of wirings have been required for realizing the series connection of all the master/slave flipflops for the testing. This results in increase of the circuit size by about 20% to 30% in comparison with the case in which neither switch nor wiring used only for the testing is provided.